package com.cqc.updatedemo02;

import android.content.Context;
import android.util.Log;

import com.dou361.update.ParseData;
import com.dou361.update.UpdateHelper;
import com.dou361.update.bean.Update;
import com.dou361.update.type.RequestType;
import com.google.gson.Gson;

/**
 * Created by ${cqc} on 2016/10/10.
 */

public class UpdateConfig {
    private static final String TAG = "UpdateConfig";
    private static String checkUrl = "http://192.168.1.11:8080/cmcc/jsoninfo";

    public static void init(Context context) {
        UpdateHelper.init(context);
        UpdateHelper.getInstance()
                // 可填：请求方式,默认为get请求
                .setMethod(RequestType.get)
                // 必填：数据更新接口，方法有重载带参数的setCheckUrl(checkUrl, params)
                .setCheckUrl(checkUrl)
                .setDialogLayout(R.layout.custom_update_dialog)
                // 必填：用于从数据更新接口获取的数据response中。解析出Update实例。以便框架内部处理
                .setCheckJsonParser(new ParseData() {
                    @Override
                    public Update parse(String response) {
                        Log.d(TAG, "response=" + response);
                        Gson gson = new Gson();
                        UpDateBean upDateBean = gson.fromJson(response, UpDateBean.class);
                        UpDateBean.DataBean data = upDateBean.getData();

                        Update update = new Update();
                        update.setForce(data.isForce());
                        update.setApkSize(data.getV_size());
                        update.setUpdateContent(data.getUpdate_content());
                        update.setUpdateUrl(data.getDownload_url());
                        update.setVersionCode(Integer.parseInt(data.getV_code()));
                        update.setVersionName(data.getV_name());
                        return update;
                    }
                })
                // 可填：在线参数接口
                .setOnlineJsonParser(new ParseData() {
                    @Override
                    public String parse(String httpResponse) {
                        return null;
                    }
                });
    }
}
